\hypertarget{calibrate_8h}{}\section{xpt2046/calibrate.h File Reference}
\label{calibrate_8h}\index{xpt2046/calibrate.\+h@{xpt2046/calibrate.\+h}}


X\+P\+T2046 calibration code.  


\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{earth2wireframe_8c_ad0fe97585b8891f5e4f2b9a6426330a4}{M\+E\+M\+S\+P\+A\+CE} int \hyperlink{calibrate_8h_a9fc562e302f746ea545c9f77309feae2}{tft\+\_\+check\+\_\+calibrated} (\hyperlink{structwindow}{window} $\ast$win)
\item 
\hyperlink{earth2wireframe_8c_ad0fe97585b8891f5e4f2b9a6426330a4}{M\+E\+M\+S\+P\+A\+CE} int \hyperlink{calibrate_8h_a83c9d1d7d710cca45a8acb543f745d4c}{tft\+\_\+touch\+\_\+calibrate} (\hyperlink{structwindow}{window} $\ast$win)
\item 
\hyperlink{earth2wireframe_8c_ad0fe97585b8891f5e4f2b9a6426330a4}{M\+E\+M\+S\+P\+A\+CE} int \hyperlink{calibrate_8h_a2473f497b14cf18c390c2927353ff1f3}{tft\+\_\+touch\+\_\+map} (\hyperlink{structwindow}{window} $\ast$win, int16\+\_\+t $\ast$\hyperlink{cordic2c_8c_a46b4b48ef8c0c01099eb3bcdde8aa8db}{X}, int16\+\_\+t $\ast$\hyperlink{cordic2c_8c_ab746e677f466f17031e92ed577fc3c15}{Y})
\item 
\hyperlink{earth2wireframe_8c_ad0fe97585b8891f5e4f2b9a6426330a4}{M\+E\+M\+S\+P\+A\+CE} int \hyperlink{calibrate_8h_ab7e5350b1af8a3d4d68f864880f8a6d8}{tft\+\_\+map\+\_\+test} (\hyperlink{structwindow}{window} $\ast$win, int points)
\item 
\hyperlink{earth2wireframe_8c_ad0fe97585b8891f5e4f2b9a6426330a4}{M\+E\+M\+S\+P\+A\+CE} int \hyperlink{calibrate_8h_a19006a3db3c542e9fa1583ed117faf55}{tft\+\_\+touch\+\_\+xy\+\_\+raw} (\hyperlink{structwindow}{window} $\ast$win, \hyperlink{send_8c_a273cf69d639a59973b6019625df33e30}{uint16\+\_\+t} $\ast$\hyperlink{cordic2c_8c_a46b4b48ef8c0c01099eb3bcdde8aa8db}{X}, \hyperlink{send_8c_a273cf69d639a59973b6019625df33e30}{uint16\+\_\+t} $\ast$\hyperlink{cordic2c_8c_ab746e677f466f17031e92ed577fc3c15}{Y})
\item 
\hyperlink{earth2wireframe_8c_ad0fe97585b8891f5e4f2b9a6426330a4}{M\+E\+M\+S\+P\+A\+CE} int \hyperlink{calibrate_8h_a09b17e588fbbddac40169119e4df6df5}{tft\+\_\+touch\+\_\+xy} (\hyperlink{structwindow}{window} $\ast$win, \hyperlink{send_8c_a273cf69d639a59973b6019625df33e30}{uint16\+\_\+t} $\ast$\hyperlink{cordic2c_8c_a46b4b48ef8c0c01099eb3bcdde8aa8db}{X}, \hyperlink{send_8c_a273cf69d639a59973b6019625df33e30}{uint16\+\_\+t} $\ast$\hyperlink{cordic2c_8c_ab746e677f466f17031e92ed577fc3c15}{Y})
\item 
\hyperlink{earth2wireframe_8c_ad0fe97585b8891f5e4f2b9a6426330a4}{M\+E\+M\+S\+P\+A\+CE} int \hyperlink{calibrate_8h_a2a4887d61a42c61637c4551c73608e4a}{tft\+\_\+touch\+\_\+key} (\hyperlink{structwindow}{window} $\ast$win, \hyperlink{send_8c_a273cf69d639a59973b6019625df33e30}{uint16\+\_\+t} $\ast$\hyperlink{cordic2c_8c_a46b4b48ef8c0c01099eb3bcdde8aa8db}{X}, \hyperlink{send_8c_a273cf69d639a59973b6019625df33e30}{uint16\+\_\+t} $\ast$\hyperlink{cordic2c_8c_ab746e677f466f17031e92ed577fc3c15}{Y})
\end{DoxyCompactItemize}


\subsection{Detailed Description}
X\+P\+T2046 calibration code. 

\begin{DoxyVersion}{Version}
V0.\+10 
\end{DoxyVersion}
\begin{DoxyDate}{Date}
26 mar 2017
\end{DoxyDate}
\begin{DoxyParagraph}{Copyright \copyright{} 2017 Mike Gore, G\+PL License}

\end{DoxyParagraph}
\begin{DoxyParagraph}{You are free to use this code under the terms of G\+PL}
please retain a copy of this notice in any code you use it in.
\end{DoxyParagraph}
This is free software\+: you can redistribute it and/or modify it under the terms of the G\+NU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This software is distributed in the hope that it will be useful, but W\+I\+T\+H\+O\+UT A\+NY W\+A\+R\+R\+A\+N\+TY; without even the implied warranty of M\+E\+R\+C\+H\+A\+N\+T\+A\+B\+I\+L\+I\+TY or F\+I\+T\+N\+E\+SS F\+OR A P\+A\+R\+T\+I\+C\+U\+L\+AR P\+U\+R\+P\+O\+SE. See the G\+NU General Public License for more details.

You should have received a copy of the G\+NU General Public License along with this program. If not, see \href{http://www.gnu.org/licenses/}{\tt http\+://www.\+gnu.\+org/licenses/}. 

\subsection{Function Documentation}
\index{calibrate.\+h@{calibrate.\+h}!tft\+\_\+check\+\_\+calibrated@{tft\+\_\+check\+\_\+calibrated}}
\index{tft\+\_\+check\+\_\+calibrated@{tft\+\_\+check\+\_\+calibrated}!calibrate.\+h@{calibrate.\+h}}
\subsubsection[{\texorpdfstring{tft\+\_\+check\+\_\+calibrated(window $\ast$win)}{tft_check_calibrated(window *win)}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf M\+E\+M\+S\+P\+A\+CE} int tft\+\_\+check\+\_\+calibrated (
\begin{DoxyParamCaption}
\item[{{\bf window} $\ast$}]{win}
\end{DoxyParamCaption}
)}\hypertarget{calibrate_8h_a9fc562e302f746ea545c9f77309feae2}{}\label{calibrate_8h_a9fc562e302f746ea545c9f77309feae2}
\index{calibrate.\+h@{calibrate.\+h}!tft\+\_\+map\+\_\+test@{tft\+\_\+map\+\_\+test}}
\index{tft\+\_\+map\+\_\+test@{tft\+\_\+map\+\_\+test}!calibrate.\+h@{calibrate.\+h}}
\subsubsection[{\texorpdfstring{tft\+\_\+map\+\_\+test(window $\ast$win, int points)}{tft_map_test(window *win, int points)}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf M\+E\+M\+S\+P\+A\+CE} int tft\+\_\+map\+\_\+test (
\begin{DoxyParamCaption}
\item[{{\bf window} $\ast$}]{win, }
\item[{int}]{points}
\end{DoxyParamCaption}
)}\hypertarget{calibrate_8h_ab7e5350b1af8a3d4d68f864880f8a6d8}{}\label{calibrate_8h_ab7e5350b1af8a3d4d68f864880f8a6d8}


Referenced by user\+\_\+tests().

\index{calibrate.\+h@{calibrate.\+h}!tft\+\_\+touch\+\_\+calibrate@{tft\+\_\+touch\+\_\+calibrate}}
\index{tft\+\_\+touch\+\_\+calibrate@{tft\+\_\+touch\+\_\+calibrate}!calibrate.\+h@{calibrate.\+h}}
\subsubsection[{\texorpdfstring{tft\+\_\+touch\+\_\+calibrate(window $\ast$win)}{tft_touch_calibrate(window *win)}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf M\+E\+M\+S\+P\+A\+CE} int tft\+\_\+touch\+\_\+calibrate (
\begin{DoxyParamCaption}
\item[{{\bf window} $\ast$}]{win}
\end{DoxyParamCaption}
)}\hypertarget{calibrate_8h_a83c9d1d7d710cca45a8acb543f745d4c}{}\label{calibrate_8h_a83c9d1d7d710cca45a8acb543f745d4c}


Referenced by user\+\_\+tests().

\index{calibrate.\+h@{calibrate.\+h}!tft\+\_\+touch\+\_\+key@{tft\+\_\+touch\+\_\+key}}
\index{tft\+\_\+touch\+\_\+key@{tft\+\_\+touch\+\_\+key}!calibrate.\+h@{calibrate.\+h}}
\subsubsection[{\texorpdfstring{tft\+\_\+touch\+\_\+key(window $\ast$win, uint16\+\_\+t $\ast$\+X, uint16\+\_\+t $\ast$\+Y)}{tft_touch_key(window *win, uint16_t *X, uint16_t *Y)}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf M\+E\+M\+S\+P\+A\+CE} int tft\+\_\+touch\+\_\+key (
\begin{DoxyParamCaption}
\item[{{\bf window} $\ast$}]{win, }
\item[{{\bf uint16\+\_\+t} $\ast$}]{X, }
\item[{{\bf uint16\+\_\+t} $\ast$}]{Y}
\end{DoxyParamCaption}
)}\hypertarget{calibrate_8h_a2a4887d61a42c61637c4551c73608e4a}{}\label{calibrate_8h_a2a4887d61a42c61637c4551c73608e4a}


Referenced by user\+\_\+loop().

\index{calibrate.\+h@{calibrate.\+h}!tft\+\_\+touch\+\_\+map@{tft\+\_\+touch\+\_\+map}}
\index{tft\+\_\+touch\+\_\+map@{tft\+\_\+touch\+\_\+map}!calibrate.\+h@{calibrate.\+h}}
\subsubsection[{\texorpdfstring{tft\+\_\+touch\+\_\+map(window $\ast$win, int16\+\_\+t $\ast$\+X, int16\+\_\+t $\ast$\+Y)}{tft_touch_map(window *win, int16_t *X, int16_t *Y)}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf M\+E\+M\+S\+P\+A\+CE} int tft\+\_\+touch\+\_\+map (
\begin{DoxyParamCaption}
\item[{{\bf window} $\ast$}]{win, }
\item[{int16\+\_\+t $\ast$}]{X, }
\item[{int16\+\_\+t $\ast$}]{Y}
\end{DoxyParamCaption}
)}\hypertarget{calibrate_8h_a2473f497b14cf18c390c2927353ff1f3}{}\label{calibrate_8h_a2473f497b14cf18c390c2927353ff1f3}
\index{calibrate.\+h@{calibrate.\+h}!tft\+\_\+touch\+\_\+xy@{tft\+\_\+touch\+\_\+xy}}
\index{tft\+\_\+touch\+\_\+xy@{tft\+\_\+touch\+\_\+xy}!calibrate.\+h@{calibrate.\+h}}
\subsubsection[{\texorpdfstring{tft\+\_\+touch\+\_\+xy(window $\ast$win, uint16\+\_\+t $\ast$\+X, uint16\+\_\+t $\ast$\+Y)}{tft_touch_xy(window *win, uint16_t *X, uint16_t *Y)}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf M\+E\+M\+S\+P\+A\+CE} int tft\+\_\+touch\+\_\+xy (
\begin{DoxyParamCaption}
\item[{{\bf window} $\ast$}]{win, }
\item[{{\bf uint16\+\_\+t} $\ast$}]{X, }
\item[{{\bf uint16\+\_\+t} $\ast$}]{Y}
\end{DoxyParamCaption}
)}\hypertarget{calibrate_8h_a09b17e588fbbddac40169119e4df6df5}{}\label{calibrate_8h_a09b17e588fbbddac40169119e4df6df5}
\index{calibrate.\+h@{calibrate.\+h}!tft\+\_\+touch\+\_\+xy\+\_\+raw@{tft\+\_\+touch\+\_\+xy\+\_\+raw}}
\index{tft\+\_\+touch\+\_\+xy\+\_\+raw@{tft\+\_\+touch\+\_\+xy\+\_\+raw}!calibrate.\+h@{calibrate.\+h}}
\subsubsection[{\texorpdfstring{tft\+\_\+touch\+\_\+xy\+\_\+raw(window $\ast$win, uint16\+\_\+t $\ast$\+X, uint16\+\_\+t $\ast$\+Y)}{tft_touch_xy_raw(window *win, uint16_t *X, uint16_t *Y)}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf M\+E\+M\+S\+P\+A\+CE} int tft\+\_\+touch\+\_\+xy\+\_\+raw (
\begin{DoxyParamCaption}
\item[{{\bf window} $\ast$}]{win, }
\item[{{\bf uint16\+\_\+t} $\ast$}]{X, }
\item[{{\bf uint16\+\_\+t} $\ast$}]{Y}
\end{DoxyParamCaption}
)}\hypertarget{calibrate_8h_a19006a3db3c542e9fa1583ed117faf55}{}\label{calibrate_8h_a19006a3db3c542e9fa1583ed117faf55}
